package com.modular.extra.fm;

import cn.hutool.core.lang.Singleton;
import com.ToolOpt;
import com.c.opt.ComOpt;
import com.modular.extra.fm.data.OptDataRecord;
import com.modular.extra.fm.data.OptFmData;
import com.modular.extra.fm.data.push.opt.OptFmDataPush;
import com.modular.extra.fm.device.opt.OptFmDevice;
import com.modular.extra.fm.factor.rule.opt.OptFactoryRule;
import com.modular.extra.fm.om.FmOmUserOpt;
import com.modular.extra.fm.online.opt.OptOnline;
import com.modular.extra.fm.site.FmFactorOpt;
import com.modular.extra.fm.site.FmSiteOpt;
import ntd.util.frame.task.handle.fm.bo.FmDataRecordBo;
import ntd.util.frame.task.handle.fm.bo.FmDataRecordItemBo;

public class FactoryFmOpt {

    public static final String DS_ID = "cc3ac1352b104abfb86da5c351f8f68c";

    public static final OptFmDevice OPT_FM_DEVICE = Singleton.get(OptFmDevice.class);
    public static final OptFmDataPush OPT_FM_DATA_PUSH = Singleton.get(OptFmDataPush.class);
    public static final OptFmData OPT_FM_DATA = Singleton.get(OptFmData.class);
    public static final OptOnline OPT_FM_ON_LINE = Singleton.get(OptOnline.class);
    public static final OptFactoryRule OPT_FM_FACTOR_RULE = Singleton.get(OptFactoryRule.class);
    public static final FmSiteOpt FM_SITE_OPT = Singleton.get(FmSiteOpt.class);
    public static final FmOmUserOpt FM_OM_USER_OPT = Singleton.get(FmOmUserOpt.class);
    public static final OptDataRecord OPT_DATA_RECORD = Singleton.get(OptDataRecord.class);
    public static final FmFactorOpt FM_FACTOR_OPT = Singleton.get(FmFactorOpt.class);

    // 基站设备操作
    public static ComOpt<FmDataRecordBo> dataRecordOpt = ToolOpt.get("data_record", DS_ID, FmDataRecordBo.class);
    public static ComOpt<Object> siteInfoOpt = ToolOpt.get("site_info", DS_ID);
    public static ComOpt<Object> omUserOpt = ToolOpt.get("om_user", DS_ID);
    public static ComOpt<FmDataRecordItemBo> dataRecordItemOpt = ToolOpt.get("data_record_item", DS_ID, FmDataRecordItemBo.class);

}
